/*
* 由于 nodejs 提供的环境是做后端开发的，后端开发少不了要做网络请求（端口的监听，web服务器的搭建 websocket服务器搭建），和文件系统打交道（文件的读取，追加，删除等操作），对于这些操作
* nodejs有提供相关的 api 进行操作，这样的api我们称之为核心模块，这些核心模式是使用commonjs模块化规范进行定义的。
*
* https://nodejs.org/docs/latest-v17.x/api/buffer.html
*
* */

/*
* 暂时的体验一下系统的 fs 模块，稍后在学习commonjs 规范
*
* https://nodejs.org/docs/latest-v17.x/api/fs.html
*
* fs 模块是用于和文件系统打交道，例如读取某个文件里面的内容
* */

/*
* 1. 引入系统提供的核心模块 fs
* 2. 使用相关的 api 读取内容
* */
/*
* require 是 nodejs 的commonjs规范提供的一个函数，用于导入某个模块
* 当一个模块导入后，我们需要使用一个变量或者常量来接收其值
* */

const fs = require('fs');

// fs.readFile(); // 异步读取
// fs.readFileSync(); // 同步读取
/*
* 异步读取
* 如果多个异步操作之间存在依赖关系，容易造成回调地狱，一般现在不太建议使用
* 这种异步的写法
fs.readFile('./data/1.txt', 'utf-8', function (error, data) {
    if (error) {
        console.log(error);
    } else {
        console.log(data);
    }
})

* */

/*
* 下面的代码就是同步读取，直接使用变量接收其返回值即可
*
* */
let content = fs.readFileSync('./data/1.txt', 'utf-8');
console.log(content, 'content');


